SINC-LINK
Vol.6 No. 5
Sept - Oct '88
IRIX'S" mLmm of
SJW-PI'EB-SWeLIIIll OSEOS
M SS.JS ISSUED 5 IMSS
m. COPIES OF THE HEHSLEITEl!
SL'. i>-SJP ^ WIH-IIEIfflEfiS.
PJP^S I^^IVE » PliEE COPV
AS PUS! OF THE sas.oo MIL
HEHIEIISIIIP FEE.
piETIEjlS DUE {]iGlillH6ED, FREE
OF canflfiE, HUH oibeii tiheh.
smcuiifi USES aMOPs.
IS»,^''SnJ^ OEPllIHe. PLEASE
311 IS PUBLICAIIOH AMD IKE
SEHD eOASESPOHDflHCE TO:
51ilS'!li'"'i,SIHC-I.IHI{ EOIIflllS,
IpAOHIO TIKEH-SIHCLAIB OSEfiS
£1118. P.O. 888 72?'! SIH. A
IOR0HT0.0HIi8IQ.Cfi|yilHI, Skm
TS2068 ISSUE
Editorial
Bob's Notebook
Larken EPROH
Big Copy
Simple Sound Port
Label Maker
LKOOS 3 Review
Pascal on Larken
Larken Game Save
File Recovery
The Last Page
EXECUTIVE OFFICERS s
PRESIDENT:
VICE PRESIDENT:
TREASURER:
SECRETARY:
ACTIVITIES DIRECTOR;
TAPE LIBRARIAN ZX81
TAPE LIBRARIAN 2068
TAPE LIBRARIAN QL
PAPER LIBRARIAN
NEWSLETTER
LIAISON OFFICER (Out
EO MAYBEE (743-8141)
JBFF TAYLOR (244-8583)
BILL LAWSON (444-8772)
GEORGE CHAMBERS (751-7559)
RENB BRDNEAU (531-9749)
■ ■ ■
RENATO ZANNESE (635-6536)
REG COTTLE (785-3987)
TOH AROELLA (653-6978)
R. BRUNEAU, J. TAYLOR, R. ZANNESE
•of -town members): GEORGE CHAMBERS ,
14 RICHOME COURT, SCARBOROUGH,
ONTARIO, MIK 2Y1 (416-751-7559)
TORONTO TIMEX - SINCLAIR USERS CLUB
P. 0. Bos 7274 Stii. A Torwrto, Out., M5W 1X9
Ccmotfo
Toronto Computes! Presents i
■ — • ^ ^ £
pDITORIAL
It is with sueLLed heart Cand sMghtly
buelled head 3 that I am proud to
inncJunce that S^nc-Link placed third out
of tuenty-tuo entries in Time Designs'
'Top Ten Newsletters" surv^eyl
This sur'v'ey, puDLished in the riay/June
'88 issue ot TO, judged entries from all
o^er North f^merica on the basis of
content, orismalityp Layout and
appearance, "hey also published my name
as editor so I'-n particularly happyl
Of course, the editor is only
responsiDle for the layout and
presentation. I: 'S the contributors uho
rnust supply the aL I - i mpo rt ant
originality ana content. uJithoui them.
I ujouidn't ha^e anything to present f So
I think That hearty round of
congratulations are due to the urlters
of the Hay/June '88 C^oi 6-3} issue.
Heartfelt thanks lo George Chambers for
suomitt ing that ^ssue to TD and for
taking the time to fill out their
questionnaire ^n winning style.
On to business, ^^or those of you uho
aspire to greatness or at least
political office of a kind, nominations
^or the neu ciuD Executi-vJe uill be taken
at the Septemoer meeting. Can you think
of someone you'd lii^e as president, v»-p ,
:reasurer etc.? Suomit his/her name.
suDmit your name! Uoting uill take place
at the Octooer meeting. Plan to be there
and cast your <joiq .
In case you're uondering, the
Sine-Link bluro on the front-left cover
is changing print style every month as
I experiment uith a program called "1st
Class fonts'" -^rom Byte Power. I'll
review it in the next newsletter.
Keep those cards, comments and
art icles coming and maybe we can grab
^irst place ^n tq - g next newsletter
survey !
J .T,
COMPUTER fmm
Fall Edition
October 14, 15 &16
Friday ?jQGii-9piii Sat & Sun. lOanHipni'
Exhibition Place
Arts Crafts.& Hobbies BuiicUiig
Keep the Toronto Coiaputer Fest '88 In nind (See
above). Because of staffing problcps and the cost of a
booth our club will not be presenT at the show.
However our club has been asked to provide support at
the experts* table*
The way It works Is like this: CoapvtMP-Fest fdlks
publish a schedule of when the expert for each systea
will be present. This way, the public can know when to
com to the show to ask questions etc»» about their
particular systea» At the nownt we hav» been assigned
peHods as follows^ Fri Oct 14th, 4 to Spsr Sit 10 to
2pa., Sunday unasslgned.
Rene Bruntau and myself have volunfeetred-to sit
In as Tinx/Slnclair experts. Probably we will htm a
bit of Tinex stuff there as a talking point*
If you are Interested In a role pleass contact
Rene or inyself. Look at the cover of tMs newslttter
for phMM nunbers.
Georgr Chanbtrs
2
SINC-LINIC
BOB'S NOTEBOOK-
==-2!!5f.!:_2^osE #, channels & streams o a tutorial
many uses and vet tw« ^Jf^ Powerful and have
and other command^ liS! FOrJI?^ mS?f ^rL
used with future peripJeralS^ •w^?^ "^^^ ^«
that many of these are * now we know
interfaces. Bu?? long bi?2?; dSI^S ^^i*** "^^^^
apparent that OPEN # an J CLOSE I *«8
play with the basic mtShine Lfh i^ *uT' * *«»
with the opening and eloiw do
with respeSt loShi TSZOk? ILS^*^".
keyboard and screen. Printer and the TS2068
between the system vaiiaWes "JJd thf 'tAS?'?^"'^ ^^•'^
J his area starts at address 2fi^« ^^^^^ program,
just short of the progSS L^a whl^** T'*!
at 26710. A short ?ro|SS SJJn ii ^h^*T?^^"°"'*^^y•
will print out all the infn^»ri.f listing below
streams. Part o? its outoSJ 1^!^°" Z\ channels and
(with some expla;a?o?y^nJt«)f °?;:«*''^''r *«J«ble 1
divided into 5nbyte blocks fi^h J? u""**
one channel. oxocks, each block representing
2068
table 1 ,. ^,.„.„,^
Address Chan Value
26688
26689
26690
26691
26692
K
0
5
14
12
75
26693
26694
26695
26696
26697
S
0
5
191
17
83
26698
26699
26700
26701
26702
R
231
10
191
17
82
26703
26704
26705
26706
26707
P
0
5
191
17
80
CHANNEL INFORMATION AREA
• Notes
2G708
f^»5^A^^f*n." add.l280d
p^7l ^^^^"^ routine.
U^4clV^l^^ add.3086d
11^*256*14), get input key.
Code for letter "K".
lat 2 bytes same as for""!?".
2nd 2 bytes = add. 45431
input routine called.
Code for letter "S".
This block irMserved~for"
use by the computer and
user? ^""^^'^^is to the
Code for letter "R".
fpSnn ^y*2^''also'poInrtr
fnnuJ' ROW Print routine.
Input routine called,
(see explanation below).
Code for letter "P".
128
Stop byte. " "
When the TS206rirswitcherorir°h3r!''''='"="====
irom address 4522d in the nnu I J L copied
Where they may be alSeiSS ly\ll TslrT^'^^'- ^''•^
fourth block (Channel "P")
26704 point to the ROM PrJJ? routing '^Pf^!^ and
These are often changed to LfnS iVLSJ ^^^9** (0500h).
Aerco prcode, they^ ar^ chaS«d J^^'^ff
respectively which Equates to^fltl (tf^JH ^^51]
prcode routine). Once these tw« ^t t °^
Changed, all printing will go via ?h«S^?^n^*^• ^''n
vprcode> routine. To get bafk ^« i-^J SSoi< ^ *° *he
bytes must be restoreflo^fS? -^'f^j'^e^^^e'ctlJ:!;
^n"d^Ke°^^o"^ie^^%- ^ie1??e%"?;„^JL^eTi^? ^^^^^
resides at 23734 to 237^4 AHH^f ^®-^ area which
equate to 26703' anS 267^^^ 'if JJ:«J«|q23749 and 2375S
address of the called outnut i«M^ ? represent
ROM , bytes 3 and 4 ^^J^^LS JS! ("^"""ily in
called input routine, fiSur bvJS% f^^lt^" °^
the Character representing i^i ch^^li^' °°de
to^l\onitlJ^?\^°Ji;^J"f"" ^ han^ the output
the "printer" and handles oStnnJ^^^rf stands for
Channel "K' stands for the ^^JSL^^ k*^^* PeripheralT
output and input, it Louts ^I^* handles both
outputs to the lowJr SJrt ^Jf JJf keyboard but also
screen display.
When the print command , ^
through channel "S" to the Lln^ff' output goes
screen. By careful use It th^ te*'"] Part of ShJ
output can be made to go thr V^S! oCherSSSil.
and
the
the
the
of
channel "P-^ it i«* J? command go to
oh^el "P"\ This is r'T^*^^^'"'*^'"''
#2."P-]. Note that thll insSJ«otL ^^J" f°"««d [OPEN
KJIrid^^lid^Jh^^^^^^^^^^^^^
Character of the ci^ei^^^hicWsS'^^^^^^^ t1"^il
co°s,d''a:i„js*?hPi"^^"*^''*"'^^"^^
called which would D?inJ«i ^"P"* routine beinp
addresses 26705 and ft^Jfi . Jf"L ^^y^^s at
address 4543) . WU^out ?Se pUse J %hf " .^f?*^"'
be immediately erased. * **** Printing would
At switch on, only four of the
stream 0 points to channel
Stream 1 points to channel
Stream 2 points to channel
i>treara 3 points to channel
16
'K"
"K"
"S"
"P"
streams are opened.
the
iTei^i%^js??nSr,r5? iiirtt'Li s'^^^^r* ^^^^^^^
until told otherwise A ?hL«!i ^^ directed to do
command C CLOSE S^fJheie ^T ^ ""^^ ^^^^'^ ^y the
Also, a channel Jiv be ?in««H k"^ ""T^J"^ ^ 15.
to its start Ip Sln^el pointing the stream
been opened to'^cSSl^^s" ^rmaMl «t"a« 3 ha.
command [CLOSE #37-p""i thio L^,^® closed by the
LPRINT aid LUST commiAds to t^f
told to revert to nSl Jm^ V""^
to the programmer dSS'tJ^ H«i Particularly useful
at the resStTof the EIr^S; J^^^Sg^ng process to look
rather than wfsJi JJLteTpaper*"'"
Sne ?loieTL?^e\1?^arir2nL°fe^'? r^'*"'*' ^'^^
fhf Ke^^ ~ ^Sf S
all have their output Pff«r.*-«4 fi,f» ana INKEYI;, may
value is strsam p tea this way, their default
PRINT #1 il "PP®*" screen), that is to sav
a"5IpRfNT^%tc! " P""^*^ #3 the Hie
SlySim? ':iir^?f 'e\%*e'e^ then use it
channels'^and sSeams? ^*^*ti,s 01
3 REM This program works in
5 REM^«=«f--LfL^P*°*''"'"
6 REM Use GO TO 10 for info
on channels & streams.
7 REM Use GO TO 200 to PEEK
stream info in system
variables. Use GO TO 220 to
PEEK channel info area up to
start of program area.
9 REM --ssssssassasssssssss
r^Ao ^?L*:^^^ 23631+256»PEEK 2
3632 t LET b=a
20 IF PEEK a«128 THEN GO TO 70
30 PRINT -CHANNEL ",CHR$ (PEEK
(a+4) )
40 PRINT -Output Address=",PEE
K a+256»PEEK (a+1)
50 PRINT "Input Address=",PEEK
(a+2)+256»PEEK (a+3)
60 PRINT , LET a=a+5, GO TO 20
70 FOR a=23574 TO 23605 STEP 2
,TAB rSf^ "^^"^ ">(ar:23574)/2
P^^^ a+256»PEEK (a+l)=0
THEN PRINT "CLOSED-, NEXT a, STO
100 LET c=(PEEK a+256»PEEK (a+i
))+b+3
pio2 ^SP^ -points to Channel ",
CHR$ PEEK ci NEXT a
120 STOP
130 RANDOMIZE USR lOOi SAVE "ch
ans.Bl- LINE 10
140 STOP
^^Ll^^^'^^^^^ TO 23605 . PRINT
i,PEEK ii NEXT i
210 STOP
jj2|0^LET prog-PEEK 23635+256»PEE
I start of CHANS
from sys variables
tlast byte in table
t channel letter
t output address
I input address.
t stream number.
I closed channel
•channel letter
iLarken SAVE routine
> addresses of
channel* attached
to streamr.
I start of prog area
SIMC-LINK
2068
Bob's Notebook con't
230 FOR i=b TO progoli PRINT i, 1 examines ohan
PEEK ijTAB 20>CHR$ PEEK 1 AND PE info area up to
EK i=>32 AND PEEK ic»90i NEXT i start Of prog area
The FOR... NEXT loop in line 200 will display a copy of
38 bytes in the system variables area containing the
address of channels attached to streams. Each stream
holds two bytes which accounts for 32 bytes and the
extra 6 are used by the internal editor and automatic
listing routines. Each two bytes contains a relative
displacement* from the byte before the channel info
area, to the channel that is pointed to. A zero means
that the stream is closed.
For Larlcen users, note the extensive use of OPEN # in
the extended BASIC commands available and particularly
note that when any or all windows or large printer
channels are opened, 38 bytes (total) of memory are
added to the channel information area. This changes
the location of the start of the program area and can
cause a problem if there is machine code in a REM
statement in the first program line. (This problem can
be avoided by PEEKING the start of the prog area and
then using this value plus 5 as the call address for
the machine code routine in the REM statement 1 eg,
[LET x=PEEK 23635+256*PEEK 236361 LET x=x+5« RANDOMIZE
USR xj). In these 38 bytes which you can examine by
using line 220 of the listing, you will find that new
channels have been set up at the beginning of what was
the start of the program area.
An interesting and illuminating exercise is suggested
for Larken users 1
.[LOAD "chans.fll"], ie, the listing above.
.Open some of the Larken extended BASIC channels.
.Try [RANDOMIZE USR lOOi OPEN #i;,"dd"J.
.Then [PRINT #4i OPEN #5rwO"]. (These will
.Then [PRINT i^^+i OPEN #6,"wl"]. (open three
.Then [PRINT OPEN #7."w2"j. (windows.
.Now use the listing above to look at what has
happened. Try doing the same thing with the Spectrum
emulator in place, if you have one.
I'll leave the heavy thinking to you at this point.
iVhat I have written will pose some other questions and
I look forward to someone else expanding on this theme
in some future issue.
by Bob Mitchell
n30n
TIMEX 2068 COMPONENTS FOR SALE
1. Complete Systen
- TS2068 w/RooswItCh
- TS2050 modeiH- Specterm Software
- Ollger 00 Inttrface
(Includes Motherboard w/RGB 1*face)
- Ollger Printer Interface
- Snith Corona Fastext 80 Printer w/cable
- Disk Drive with Power Supply (all cased)
- Lots of software on disks (free)
Total package (excluding shipping costs) $600 Can*
2. - TS2068 without Romswltch $65 Can.,
3» - TSIOOO (new In carton) $30
4. - TSIOOO RAMpack $10
5. - ByteBack mode* w/software $30
(2068 or 1000)
6., - TS2040 Prtnter $25
If any one Is Interested In this equipment drop
John Matheson a 11ne« Address is 1852 Appleford St
Gloucester, Ont., KIJ 6T4 CANADA. His phone nuMber Is
(613) 746-7869
URKEN EPROM DOS Version 3
by G« Chanbers
Larry kenny has cone out with a new EPROM DOS for
his Larken system. We have only had tthls version for
a few days, but Bob Mitchell has done a short review
of it else where In this newsletter. Larry Is
offering this latest version of the EPROM for $5 plus
S&H, plus your old EPROM. I happened to have five
spare EPROMS around so I sent then to Larry along with
$26 and asked hln to send a set so that we cold
upgrade some of our members systems^ This has been
done.
An Interesting thing however. Two of the EPROMS
that I sent to Larry were made by TI and were the type
that have a "penthouse" (as Bill Jones calls It) on
top of them. Sort of a raised area where the window
Is. Anyway, turns out that they would not work. At
least they would not work until I connected a wire
between pins 14 and 20, and bent pin 20 so that It did
not enter the socket. Something like we experienced
with the very first Larken cartridges*. I see, also,
reference to this sort of a problem In the Current
issue of TS UPDATE where there Is a note to the effect
that" ...apparently the EPROM with the "penthouse" on
top cannot be used with the Larken cartridge."
It*s not really a problem, just an Interestf*" ^
quirk. I*m sure that we will hear the whys
wherefores shortly..
Bob Mitchell mentions a small *bug* In the PRINT
routine. I have drawn Larry's attention to It. It Is
not a real bug, but here's how It comes about., In the
Aerco printer drive (and maybe others) you have to
poke In a number that Is one less than the number of
characters you want to be printed out on a line. That
Is to say. If you want a line with 64 characters In
It, TASWORD Style, you must POKE In a 63. It would
seem that the new EPROM defaults to 64, Instead of to
the needed 63. It Is still operational; you simply
have to POKE a 63 Into the DOS. Uhen I spoke to Larry,
he was unaware that the wrong number was In the EPROM.
I*m sure It will be corrected promptly.,
As I mentioned earlier, we have upgraded 5 systems
In the club. By sending the five EPROMt out we were
able to do this without anyone having to shut down
their system, or to buy an EPROM they did not really
have a use for. I mention this because If any other
members are Interested In upgrading by this process
they should conUct me forthwith and I will return ny
EPROMS for another go around. It will cost you $5.40.
Plus your old EPROM.of course.
«♦*♦*♦*♦♦*•**•***♦*****
SINC-LINK
2068
3ig Copy
Hei-e IS a program that can h«
used to m;=iif<a T --Aiau can Pe
of a scr^Pn ^.^^^^^ shaded copy
^' ^Z''^®®" '^2ing the 2040
? prxn? spectrum mode,
prints out in four secti^r,
-^nd these sections have to be
taped together. ^®
f Jst'^'et^^^^ program you would
^x.ot oet your computer in
spectrum mode. Enter CLEAP
49999 :LOAD"B_C"CODE.Snce thi
-aded you can load a screen bv
entering LOAD"SCREEN"SCREPm? '
RANDOMIZE USR 50000 ^^^^^^^ =
This proaram is orespnt-^^ u
^ntered^'v^: ^^^^^ Holland.
-- oo ^'^ ^-snato Zannese
-- kem big copy
^ ?.EH saved as "B_r" '-ODE
^ ad;=5oooo
i-ET a = iO: LET b=il: LET c = i
^ e = i4: LET f = i
I 30 FOR q=iOO TO 200 STEP 10: R
-AD aS.tot
40 LET w=i6*7AL a$ (1) +VAL a$ (2
LET'to^ftot-l"^ ^""^ adr = adr + l:
TO ) : IF aSO""
'3 IF tot<,:0 THEN PRINT "Erro
i in i.ine ";q: STOP
'-' n i-1 i Q
35 STOP
^ 90 PRINT "All IS OK! ! ! Press a
Key to SAVE": PAUSE 0
'ibt^' "B_C"CODE 50000,
BcEir' PRINT "Preoarp
to JfiRIFY": VERIFY "B_C"CODE .
100 DATA "3e003259c53a57c53258c53
aD3c5 4f 3a59c547c5f 5cd89c4f Icl3e08
3 2 5dc5e5 7e3 2 5cc52f 773a59c5473a58c
54fc5f 5cd4b" ,6155
110 DATA "C4flcl7ee607325ac57ee63
-^Cb3fcb3fcb3f325bc5c53a5cc54f0508
Ch40cce7c3cb7 9cd0ac4cb2110f 2cl7Qr
:3258c5el",6721
120 DATA "233a5dc53d325dc5c26fc33
a59c53c3259c5fec0c255c3060af 5c5cd
Cd0eclfll0f73a57c5c6403257c5fe00c
2o0c3cdc8c4" , 6785
130 DATA "c9f 5c53a5ec53cf e21caf dc
3fealca02c4325ec5clflc93e81c3f7c3
5c5e5dd2169" , 7625
140 DATA "C447fe00ca26c4110400ddl
910fc21ff 5a3a5ec506004f 0906047ecfa
27cb27cb27cb27dd5600b277dd2311200
01910eaelcl",5019 ^^-^-^^UU
150 DATA "C9cb39cb39cb3978cb3fcb3
fcb3f21005811200047fe00ca67c41910
fd09c90f0f0f0f 0a050a050c010403010
40208080208" , 3542 J.y'*u:»uxu
160 DATA "00080002000004000000000
000210040dd21b8c4cb39cb39cb391600
5919780608cb7fc2a9c4dd23dd23c3b4c
4dd5600dd23",4330
170 DATA "dd5e0019dd231710e6c9100
008000080004000200400020001001608
010018210040cb41cadac4cb3ec3dcc4c
D26230b78bl" , 3817
^180 DATA "C2d0c415c2cac4060021f f 5
773cb3fcb3f 77 2310f 7210059 36472310
--.10 0 5a7Scb3f cb3f 77230478f e00c20
0c521ff5336",533S
190 DATA "00dd2137c52100590e20dd5
b00dd230608cd7aca2ac5367823cb2210
f 40d7 9 feOOc 21 cc5c9 7 74400005444000
05654000054" , 4324
200 DATA "2a252e572a252400022aa40
0022Sa4000 3a8a4" ,10 7 6
Addr Hex
OP Operand/Notes
C350
C352
C355
C358
C35B
C35E
C35F
C362
C363
C364
C365
C368
C369
C36A
C36C
C36F
C370
C371
C374
C375
C376
C379
C37A
C37D
C37E
C37F
C380
3E00
3259C5
3A57C5
3258C5
3A58C5
4F
3A59C5
47
C5
F5
CD89C4
Fl
CI
3E08
325DC5
E5
7E
325CC5
2F
77
3A59C5
47
3A58C5
4F
C5
F5
CD4BC4
LD
LD
LD
LD
LD
LD
LD
PUSH
PUSH
CALL
POP
POP
LD
LD
PUSH
LD
LD
CPL
LD
LD
LD
LD
LD
PUSH
PUSH
CALL
A, 00
(C559) ,A
A, (C557)
•0558) ,A
A, (C558)
C, A
A, (C559)
B, A
BC
AF
C489
AF
BC
A, 08
(C55D) ,A
HL
A, (HL)
(C55C) ,A
(HL) ,A
A, (C559)
B, A
A, (C558)
C, A
BC
AF
C44B
SINC-LINK
2068
C383
C3 84
C385
C386
C388
C38B
C33C
C3 8E
C3 9 0
C3 9 2
':3 3 4
C 3 9 7
C398
C3 9B
C3 9C
C 3 9 E
C3A0
:3A3
C3A5
3 A3
:3AA
3AC
-3 AD
:3AE
C3E0
:234
C3B5
C3B8
:3B9
C3BC
C3BF
C3C2
C3C3
C3C5
C3CS
:3CB
Fl
CI
7E
E607
325AC5
7E
E638
CB3F
CB3F
CB3F
325EC5
3A5CC5
4F
0608
CB40
CCE7C3
CB79
CD0AC4
C32i
■ n r T
3 5 0 8
3 2 5 3 C 5
3A5DC5
3D
325DC5
C26FC3
3A59C5
3C
3259C5
FECO
■JiCF
:3D2
C3D3
C3D4
C3D6
C3D9
C3DB
C3DE
C3E0
C3E3
060A
CDCDOE
CI
Fl
10F7
3A57C5
C640
3257C5
FEOO
C250C3
CDC8C4
Q
.' C" '— ' '_ J
:3E9 3A5EC5
:3ED FE21
:3EF CAFDC3
:3F2 FEAl
:3F4 CA02C4
:3F7 325EC5
-3 FA CI
:3FB Fl
:3FC C9
POP
POP
LD
AND
LD
LD
AND
SRL
SRL
SRL
LD
PUSH
LD
LD
LD
BIT
CALL
BIT
CALL
SLA
DJNZ
POP
LD
ADD
LD
POP
INC
LD
DEC
LD
JP
LD
INC
LD
CP
JP
LD
PUSH
PUSH
CALL
POP
POP
DJNZ
LD
ADD
LD
CP
JP
CALL
RET
PUSH
PUSH
LD
INC
CP
AF
BC
A, (HL)
07
(C55A) ,A
A, (HL)
3 8
A
A
A
(C5 5B) , A
1— <>—
A, (C55C)
C , A
3 , 03
0 ,E
Z I C3E7
7 ,C
C40A
- 1 4 : C 3 9 E
3C
A,C
A, 0 3
'C553) , A
HL
HL
A, (C55D)
A
(C55D) ,A
NZ , C36F
A, (C559)
A
(C559) ,A
CO
NZ , C355
B, OA
AF
BC
OECD
BC
AF
-9 >C3CD
A, (C557)
A, 40
(C557) ,A
00
NZ ,C350
C4C8
JP
CP
JP
LD
POP
POP
RET
AF
A, (C55E)
A
21
Z,C3FD
Al
Z ,C402
(C55E) ,A
BC
AF
C3FD
C3FF
C402
C405
C407
C40A
C40D
C410
C413
C414
C415
C419
C41A
C41C
C41F
C422
C424
C426
C429
C42C
C42E
C42F
C4 3 0
C432
C433
C435
C43 7
C439
C43B
C43E
C43F
C440
C442
C445
C446
C448
C449
C44A
C44B
C44D
C44F
C451
C452
C454
C455
C458
C45B
C45E
C45F
C461
C464
C455
C467
C468
C469
C46A
C46B
C46C
C46D
C46E
C46F
C470
3E81
C3F7C3
CDCDOE
3E01
C3F7C3
3A5BC5
CA13C4
3A5AC5
C5
DD2169C4
47
FEOO
CA2 6C4
110400
DD19
lOFC
21FF5A
3A5EC5
0 6 0 0
4F
09
0604
CB27
CE27
CB2 7
DD5600
B2
77
DD23
112000
19
lOEA
El
CI
C 9
CE 3 9
CB39
CB39
78
CB3F
CB3F
CB3F
210058
112000
47
FEOO
CA67C4
19
lOFD
09
C9
OF
OF
OF
OF
OA
05
OA
05
LD
JP
CALL
LD
JP
LD
JP
LD
PUSH
PUSH
r
LD
CP
J?
LD
ADD
DJNZ
LD
LD
LD
LD
ADD
LD
LD
SLA
SLA
SLA
SLA
LD
OR
LD
INC
LD
ADD
DJNZ
POP
POP
SRL
SRL
SRL
LD
SRL
SRL
SRL
LD
LD
LD
CP
JP
ADD
DJNZ
ADD
RET
RRCA
RRCA
RRCA
RRCA
LD
DEC
LD
DEC
A, 81
C3F7
OECD
A, 01
C3F7
A, (C55B)
Z,C413
A, (C55A)
BC
HL
IX,C469
B, A
00
Z,C426
DE, 0004
IX , DE
-4 >C422
HL, 5AFF
A, (C55E)
B , 00
C, A
HL,BC
B , 04
A, (HL)
A
A
A
A
D
D
(HL)
IX
DE, 0020
HL,DE
-22 >C432
HL
BC
(IX+0)
, A
C
A, B
A
A
A
HL, 5800
DE,0020
B, A
00
2,C467
HL.DE
-3 >C464
HL,BC
A,
B
A,
B
(BC)
(BC)
SINC-LIHK
2068
C471
OC
INC
c
C472
010 40 3
LD
RP . n 1 n A
ay~. 1 w J VJ '±
C475
010402
LD
P.n n T n A
oy— J U jt U Tt
C478
08
EX
AF . AP
C479
08
EX
C47A
02
LD
CEO . A
C47B
0 8
EX
nc i AC
C47C
00
NOP
C47D
08
EX
A P . A P
C47E
00
NOP
C47F
02
LD
v.DV«; » A
C4S0
00
NOP
C481
00
NOP
C482
04
INC
C483
00
NOP
C484
00
NOP
C485
00
NOP
C486
00
NOP
C487
00
NOP
C488
00
NOP
C48 9
210040
LD
HL, 4000
C4SC
C490
C492
C49 4
C496
C 4 9 S
C499
C49A
C49B
C49D
C49F
C4A2
C4A4
C4A6
C4A9
C4AC
C4AE
C4Bi
C4B2
C4B4
C4B5
C4B7
C4B8
C4EA
C4BB
C4BC
C4BD
C4BE
C4BF
C4C0
C4C1
C4C3
C4C4
DD21B8C4
CE39
C3 3 9
CB3 9
1600
5 9
19
~1 o
I u
0608
CB7F
C2A9C4
DD23
DD23
C3B4C4
DD5600
DD2 3
DD5E0 0
19
DD23
17
10E6
C9
1000
08
00
0 0
8 0
00
40
00
2004
00 -
0 2
SRL
SRL
SRL
LD
LD
ADD
LD
LD
BIT
JP
INC
INC
JP
LD
INC
LD
ADD
INC
RLA
DJNZ
RET
DJNZ
EX
NOP
NOP
ADD
NOP
LD
NOP
JR
NOP
LD
IX , C4B8
D, 00
E . C
HL, DE
A, B
B , 08
7, A
NZ ,C4A9
IX
IX
C4B4
D, (IX+0)
IX
E, (IX+0)
HL, DE
IX
-26 .>C49D
+0 >C4BA
AF, AF
A, B
B, B
NZ,+4 >C4C7
(BC) ,A
C4C5
C4C6
C4C9
C4CA
C4CD
C4D0
C4D2
C4D5
C4D7
C4DA
C4DC
C4DD
C4DE
C4DF
C4E0
C4E3
C4E4
C4E7
C4E9
C4EC
C4ED
C4EF
C4F1
C4F2
0 0
010016
08
010018
210040
CB41
CADAC4
CB3E
C3DCC4
CB26
<^
OB
73
Bl
C2D0C4
C2CAC4
0600
21FF5 7
7
CE3F
C33F
77
•-•it i
C 4 F 5
C4F8
C4FA
C4FB
C4FD
C500
C501
C503
C50 5
10F7
210059
3647
lOFE
21005A
78
CB3F
CB3F
7 ~1
NOP
LD
EX
LD
LD
BIT
J r'
SRL
JP
SLA
INC
DEC
LD
OR
T r>
DEC
JP
LD
LD
LD
SRL
SRL
LD
INC
DJNZ
LD
LD
INC
DJNZ
LD
LD
SRL
SRL
LD
BC,1600
AF.AF
3C,1800
HL, 4000
0,C
2 .C4DA
vHL)
C4DC
(HL)
HL
BC
A,B
C
NZ , C4D0
D
NZ,C4CA
3,00
HL, 5 7FF
A , B
HL) , A
-3 >C4EC
HL, 5900
(HL) ,47
HL
-5 >C4F8
HL, 5A00
A,B
A
^ HL) ,A
C506
INC
HL
C507
0 4
INC
o
C5 03
"7 n
LD
A,B
C509
FEOO
CP
0 0
C50B
C200C5
J?
NZ,C500
C50E
21FF58
LD
HL, 58FF
C511
3600
LD
(HL) ,00
C513
DD2137C5
LD
IX,C537
C517
210059
LD
HL, 5900
C51A
0E20
LD
C. 20
C51C
DD5600
LD
D, (IX+0)
C51F
DD23
INC
IX
C521
0608
LD
B, 08
C523
CB7A
BIT
7,D
C525
CA2AC5
JP
Z ,C52A
C528
3678
LD
(HL) , 78
C5 2A
23
INC
HL
C52B
CB22
SLA
D
SINC-LINK
7
2068
'w D Z U
i 0 F4
DJNZ
-12 >C523
C 5 2 F
OD
DEC
C5 3 0
7 9
LD
A,C
J.
FEOO
.~" r>
00
L5 3 3
C2iCC5
JP
NZ , CSIC
' ^ R "3 i^:
J
RET
C 5 3 7
LD
(HL) ,A
'2 5 3 S
44
LD
B, H
'-5 3 9
0 0
NOP
C 5 3 A
0 0
^TOP
C 5 3 E
5 4
LD
ij » H
C5 3C
44
LD
3,H
C5 3D
0 0
'lOP
■■— Hi
0 0
MOP
D 3 F
LD
D » (KL)
D , K
- J 4 U
5 4
LD
C541
0 0
NOP
C 5 4 2
0 0
NOP
5 4
D, H
C 5 4 4
2A2 5 2E
LD
-~i L t ' ,£i E z 1/ )
'_ L /
-
LD
D , A
_ L ^ >i
- A 2 5 2 4
LD
HL. (2425)
C54E
C 0
NOP
■_ I'
0 2
LD
■ 3C) , A
C 5 4 D
2AA4 0 0
LD
HL. (00A4)
C5 5 0
•"5 -\
•J
r r*-
'BO ,A
C5 51
23A4
JR
2,-92 >C4F7
C55 3
00
NOP
C554
0 3
INC
BC
CSS 5
A8
XOR
D
C556
A4
AND
H
i"' S S 7
n n
NOP
CSS 3
0 0
NOP
C 5 5 9
00
NOP
CSS A
0 0
NOP
-- c:. c s
rs
NOP
Simple
Sound
Port
By
Renato
Zannese
S/31/88
A simple sound port can be
added to the rear of the Larken
Disk Interface so your monitor /
amplifier can control the volume
coming from the speaker on ^he TS
2 0 6 3.
iou will need to get the
following Items to make a
external sound port:
-22k res 1 stor
-iOk resistor
-100k resistor
- an P:CA jack
xou have to open you computer
so you can cut one of wires that
goes to the speaker inside the
computer .
First thing you have to do is
carefully solder the 22k resistor
to a thin piece of wire. Solder
the end of the resistor to the
pin called sound. Cover the
resistor and wire with thin heat
shrink tubing. Solder the other
end of the wire to the center of
the RCA lack and solder the
outside of the RCA jack to the
big ground trace on the rear of
the Larken interface.
The second thing you have to do
is solder one end of the 100k
resistor to the pin called beep.
Solder the other end of the
resistor to the end the wire from
the beginning.
The last part you have to do is
solder the 10k resistor between
the nround and the wire that goes
to the center of the RCA jack.'
Refer to diagram if you are
having any trouble.
Make sure all visible
joints /wire are covered
heat shrink tubinq. The
solder
up by the
lonq wire
can glued to the rear board on
the Larken interface.
If you don't have a Larken
interface, this modification can
be .^one inside the comDuter. Be
careful when workinq inside the
compute r .
If you don't have a monitor
with an audio input vou can use
the Mini Audio Amplifier made by
t<adio Shack # 277-1008
fin j
4
ujire
SINC-LINK
2068
AN IMPROVED LABEL MAKER FOR LARKEN SYSTEM
by G, Chambers
Writing programs to create labels is a time
honoured pastime among the computer crowd. But I think
this program offers just a bit more.
It Is designed to produce labels of the contents of
your Larken system disks. It offers the option of
printing to the 2040 printer or a large printer. It
provides the option of sorting the files alphabetic-
ally. It also provides the option of printing the
program names in one, two or three columns.
Although the program makes use of the Hacksel
printer software -Iprlnt.Cl-. another driver software
could be used by modifying lines 160 and 350.
The program operates on the basis of reading the
1 rectory {Track 0). placing the names In a (d$) array,
then manipulating them as required.
100 REM File Label Maker vi i
for the LARKEN system
110 REM ,By G. Chambers
1^ Riohome Court
Scarborough, Ont.
CANADA MIK 211
1^0 HhM Use to make a printout
disk files
130 REM Data statements contain
Drive Control Code.
140 REM For use with the DSK400
. system of 509O bytes/track
using a DD drive i.e.SO tricks
j50 RANDOMIZE (JSR lOOt OPEN
^^160 PRINT #4. LOAD -lprint.Cl"C
170 LET c$="
180 RESTORE VAL "210-
3^1°/°^ "''^AL "63000- TO VAL "6
^200 READ ai POKE n,a
'^10 NEXT n
220 DATA 195.43,246,0,0,0.0 0 0
.243,205,98,0,201,58 '"'"•"•^'O
230 DATA 100,0,251,201,205 31 ?
46,58.176,92,50.29.32,265.126 '
240 DATA 0,205.123,0 33. i%2
17.156.224,1,0.20,237 176
250 DATA 195,38.246
260 DIM d$(90,ll)
f 270 LET trac=yAL "23728", LET ]
oadbuf=VAL "63000- ° ' ^i-r 1
280 LET name = VAL "=;7688"
^290 BORDER PI/PI, PAPER pi/pj,
J^^s^r^l^.l "2", VAL "6", I
NK VAL "2") PAPER VAL "6"." LARK
EN DISK UTILITY ", PAPER PI/PI?
.TAB VAL "10", PAPER VAL "6"," L
abel-Maker "1 PAPER VAL "1-,,TAB
VAL "6"; PAPER VAL "6"|" By Ge
orge Chambers "
310 INK VAL "3-1 PLOT NOT PI.VA
L "108"i DRAW NOT PI, VAL "62"i D
RAW VAL "255", NOT PI 1 DRAW NOT P
I 'VAL --62- I DRAW VAL "n2 55-,NOT
320 INK VAL "6-1 PLOT VAL "S-.V
AL "114", DRAW NOT PI, VAL "50",
gRAW VAL "238", NOT PI, DRAW NOT
PI, VAL "n50"i DRAW VAL "r238-.N0
T PIi INK VAL -7- ^ . "
PRINT Install disk ne
eding a label" ... then Prea
3 a key"' , PAUSE NOT PI
^^^JP^^ 23658,0, PRINT AT 12,0
I OVER 0|O$|c$jAT 14, 0| INK 7,-L
arge or small printer? (L/S)
PAUSE 0 \ II
350 LET n$=INKEy$i POKE 26703,0
.POKE 26704,5, IF n$=-l- THEN
POKE 26704,254
360 PRINT AT 14,0, OVER 0,c$, P
AUSE 50. PRINT AT 16,0, "Print Nu
mber of columns (l:-3) "j, PAUSE
Oi LET p=C0DE INKEY$-48
370 PRINT AT 16,0, OVER 0,c$, P
AUSE 50
380 INPUT "Sort (Y/N)? ";3$
390 INPUT "Enter Disk Title ",n$
400 LPRINT
410 REM PlGking pgm names
from buffer (Track 0)
420 POKE tracNOT PI, RANDOMIZE
USR loadbuf
430 LPRINT "Disk Name, "jn$, LP
RINT *
440 FOR n= PI/PI TO VAL "90"
450 IF PEEK (name+3)=N0T PI THE
N LET e=n-l, LET n=VAL "90", GO
TO VAL "520"
460 IF PEEK (name*PI/PI)=VAL "2
54" THEN LET name«name+VAL "14"
« GO TO VAL "490"
470 FOR m='PI/PI TO VAL "9"
480 LET d$(n,m)=CHR$ PEEK (name
+m;
490 NEXT m
500 LET name=name+VAL "''4"
510 PRINT AT ll,ll;d$(n),"
520 NEXT N
530 IF s$i>"y" THEN GO TO 59O
540 PRINT AT 11,11) FLASH 1," S
orting "i FLASH 0
550 FOR i=l TO (e^l), FOR j=i T
0 e
560 IF d$(i)>d$(j) THEN GO SUB
580
570 NEXT U NEXT i, GO TO 590
580 LET q$=d$(j), LET d$(j).d$(
1)1 LET d$(i)=qi$, RETURN
590 PRINT AT 11,11,"
600 FOR n=l TO e
610 IF INT (n/p}=(n/p) THEN LP
RINT d$(n, TO 10), GO TO 63O
620 LPRINT d$(n),
630 NEXT n
640 LPRINT I LPRINT , LPRINT
650 DIM f$(VAL "9")
660 PRINT AT VAL "20", VAL "6"}"
Label finished"' "Press a key for
another start"
670 PAUSE NOT PI, GO TO VAL "28
0-
680 STOP
8000 INK 0, PAPER 7» BORDER 7i C
LS I LIST , STOP
9900 REM *• Save to Disk *•
9910 CLEAR I PRINT USR lOOi SAVE
"label2.Bl" LINE 100
9930 STOP
SINC-LINK
2068
LKDOS VERSION 3 EPROM
HIGHLIGHTS & FIRST IMPRESSIONS by Bob Mitchell
Version 3 came hot on the heels of version 2t now
the LKDOS cartridge contains some major additions and
improvements. This article is a summary of the
highlights I have used in the few days I have had
version 3, some applications I have already identified
and used and some of my overall impressions. The new
version 3 eprom comes with new instructions and you
•lUST REPEAT MUST read these very closely to glean all
the information LARKEN has included.
DOTE I [PRINT i/^] below may be replaced by
[RANDOMIZE USR 100] OR [PRINT USR 100] if stream #4
has not been OPENed.
HIGHLIGHTS
1. PRINT LPRINT "file" differs from the PRINT
-ommand by sending the file to the printer. Like PRINT
this does a good job on text but line numbers will be
'-arbled in program listings.
d. fiUNT #4 1 NEW (reloads an AUTOSTART program in the
current drive.) This can be very useful in two waysj
(1) Used from the keyboard, it does a "warm start"
•vhich lets you avoid switching ttie computer off and on
tor a fresh start. A "warm" start is one that does not
-Change any of the settings in the cartridge or any
selected ':)anks.
(2) Used in a program line, it reloads the AUTOSTART
program in the current drive. (If there isn't one in
the current drive, it does a cold start.) This avoids
naving a duplicate of the AUTOSTART program such as
"rienu.Bl" to return to, as was the case in the first
version.
PRINT ,'/4t i'OVE is a [rename file] command. It does
t;ot copy programs as can be done by the LARKEN "move"
program supplied by LARKEN on disk. To rename a file
follow this command with "oldname" , "newname" . If you
try to use a nevi-name that is already on the disk, you
vill get an error report [Z - Name Exists]. This error
trap applies only to this command; you can still SAVE
to an existing file name (eg, when you are saving a
lile with new listings or data.) MOVE is particularly
useful for renaming an NHI save.
NMI SAVES. LARKEN has given us a choice of saving
the SCREEN along with the entire program. Pressing the
push button on the disk interface and then any key
from 1 to 5 will do the NMI save with the SCREEN too.
iiolding the CAPS SHIFT key down while pressing any key
1 to 5 will skip the SCREEN save. Pressing the [a] key
will usually stop the program. This can often get you
out of an apparent "crash" when dabbling with machine
code. The [sj key can still be used to do a separate
■CREEN save. After Dressing the NMI button, you can
always press [ENTErI if you change your mind and then
you return to your program. The [f] key can be used to
run a User Defined NMI routine. I have not tried this
yet .
7. SEQUENTIAL FILES. Further to all the good things
mentioned above comes the piece de resistance i
sequential file handling. I first tried this by
listing a file to a sequential filej here is how it
can be done.
8. Type in both listings below and SAVE them. The line
numbers in listing #1 are intended to allow it to be
MERGEd with Tasword , Those in listing #2 are intended
to allow it to be MERGEd with any listing you wish to
send to a sequential file, assuming the latter does
not have conflicting line numbers. Now, LOAD listing 2
and MERGE the required program and GO TO 99^0 to do
the save to a sequential file. Restart the computer
and LOAD Tasword. MERGE listing 1 into Tasword
assuming again that there is no conflict of line
numbers. GO TO 2190 to LOAD the seq. file you just
saved. This will be slow (if there is a better way I
have yet to find it). When the LOAD is completed, GO
TO 10 and the ASCII listing should be there. You will
also have the lines from listing 2 but it is no
problem to erase then.
LISTING #1
2190 PRINT #4i CLOSE #5
2195 INPUT "name? "i LINE n$i
LET n$=n$+" IN "
2200 PRINT #4 1 OPEN #5,n$
2205 FOR i=33280 TO ^19280 STEP
64
2207 LET f=0i LET j=0
2210 LET a$=INKEi:$#5
2215 IF CODE a$=255 THEN GO TO
2240
2220 PRINT a$;
2221 IF CODE a$=13 THEN LET f=li
LET a$=CHR$ 32
2225 POKE i+j,CODE a$
2227 IF f AND j<64 THEN LET
a$=CHR$ 32 1 LET j = j + li GO TO
2225
2229 IF NOT f THEN LET j=j+li IF
j=64 THEN GO TO 2235
2230 IF NOT f THEN GO TO 2210
2235 NEXT i
2240 STOP
LISTING #2
9940 RANDOMIZE USR 100 1 OPEN #
4 ,"dd"
9950 PRINT //4. CLOSE ^'5
9960 INPUT "name? "( LINE n$t
LET n$=n$+" OUT "
9965 PRINT #4t OPEN #5.n$
9970 LIST #5
998O PRINT #4 J CLOSE #5
9990 STOP
NOTES
Start here to close stream 0^
Enter name of file to be read
IN, ie, loaded.
Open up stream #5*
File is input as code into
memory starting at address
3328O. 49280 allows for 250
lines of 64 characters.
255 is the end of the file
sent by LKDOS when saved.
Each character is read in.
When end of line is reached,
set flag f and make 13=32.
POKE this value into memory.
If flag is set and J is less
than 64, pad out the rest of
the line with jpaces.
If flag is still not set, ttreW
keep reading in characters.
NOTES
Initialize use of PRINT §t^.
Start here to Save seq. filg
Enter name for file save.
Open up stream fr'5 and SAVE
the listing.
Close the stream.
FIRST IMPRESSIONS
5. PRINT //4i POKE 8200, address to be PEEKed. Use this
to PEEK into the Cartridge eprom or RAM. Then use USR
110 (eg, LET b=USR 110) to print the PEEKed value.
This does a single address PEEK. You are warned not to
POKE or PEEK addresses 96 to 111 or the cartridge will
crash.
6. LARGE PRINTER DRIVER. Vastly improved, it now does
all the essentials I change line length, left margin
settings, line feed as well as handle TAB and comma
L,j. It will print any GRAPHICS characters in a
listing as underlined ASCII characters. (With my
printer this turns out to be the ASCII character
followed by the underscore character on the [O] key
probably because there is no backspace feature
included in my printer's specifications.) In my eprom
the line length is set improperly at 65. This will
probably be corrected in eproms shipped after LARKEN
was told about this one. Change any of the settings by
PRINT #4 1 POKE address, value. These new parameters
open up all sorts of possiblitiesi For example, if you
like to make copies on your wide printer of your CAT
outputs, you can change the line length to say 48 by
POKE 16090,47 and print the copy with three columns of
file names and blocks used. This done after using OUT
127,15 prints a neat CAT in condensed letters that
fits nicely on the diskette jacket. Incidentally,
there is a new glue stick called Tack a Note by
Uennison that makes paper self ^sticking and removable 1
just perfect for this job.
9. This version has just about all that one could
wish for. I would have liked to see a Double PEEK or
DEEK included but maybe that is where I could use the
User Defined Command [DATA] feature.
10. Sequential filing will have to be studied very
closely to exploit its capabilities to the full. I'm
sure that what I have done so far it but the tip of
the iceberg. Other readers should be able to supply
some better examples for utilizing this new feature.
11. My congratulations to Larry Kenny for this and all
his other innovations that have opened up new horizons
for us Timex Sinclair survivors; I heartily recommend
you LARKEN owners order the new version 3-
-30-
Bob Mitchell 88O8O5
10
SINC-LINK
PASCAL DISK HANDLER
for the
LARKEN DISK OPERATING SYSTEM
One of our club members, David Solly, has a strong interest In
Tslo68r°«iH Pascal for tSe %ectrum? ouS
thelaiiersystlm''^" "''^'^''^ °" PROCedures to alloS ao=e;s To
interest fn^pL^^i ^''S?'"*^!!'* t'^^^^^^g f^"" everyone with an
l4oirottawaront!-Kl"3P4f '^"^ '^-i-' ^pt.
subtlct ^Mu.r?nn^?f'"^v."^!*' ^" ^l^P^S^ dissertation on this
vou a co^v i? v^^^*^^ ^''-J'l?* ^ ^ newsletter, but I can send
you a copy if you are interested. What follows is an
f^^rn"°-2Ty paragraph from it, and also a couple of pa^Lraphs
from David's letter to me on the subject. paragraphs
comiluerHiSoft*(?M)''p«^^", ^"^^^ ^y^*^'" ^"^in a
uorapixea Hit>oit (TM; Pascal program is now possible thank«i fo
o^^J^rf "''^^'*^r*^°P«'* "^avid Solly and L^rry Kenny? Thil
Brlc?inaf ""f ^^ *° procedures anrgives a
directory Sgrlm" " "^^'^ ^ ^^-P^^
Dear George,
on acce^°J'fna''^^h"r t^"^ ^^^^ ■ ^«=^i^ed the copy of my article
compl^eriascal T .orft-^" Operating System from within
received ^ ^thJ 1 ^ ""^^ *° "^^oft in England and
virv Tnterestl^a * ==^^"9 that he found it
lofiR P«=^^? = H^' , ^^"'^ ""^ ^^^^ printer patches for TS
in th^ ,nfi« programs Mon and Gen which are
^his letter on T^"" °^ ''^^Pac 3. I have included them with
P^tr.l . separate sheet. I have tried the patch for
ll^^^L although I should warn you that the
hanS^e th^T^f^"-" 3^^"^:= ^OS does not seem to'^be able to
wf^h w ^ J"""^ "9ht curly brackets, therefore; if you
cur^v bLckJ;T"t? P^^''^ correctly use the option for
«"^,,L "(*" and •■*)•■. Another way to get
"°Thl ^ wf"""^^^"!,,^^ ^° another short printer driver
hLo.o 1 23320 without opening #3 to the line printer
Shf^ -iv Pascal. One advantage of Larry's new system
JZ J ^^t^^ "^^^^ Sasic listings it that you can
^o^o!h\.^ " ^ detokenized form to the disk and then
Anw«l ^"to M-Script for inclusion in an article.
TT^ J' K ^° "^"^"^ some serious programing in Pascal
TSronto user Grou;. '""^ programs to you and to the
d^=k^>,.\^% ^^"1? ^""l^"' Schieman and I are working on a
«t T ^f=f f l""" ^^srsoft Forth. I am not so much into Forth
=LfL ™ . ^ figure that if I can make the Larken
^^onLoT f K . "='^^"9 it accessible in other computer
^ J'-'^'^I^ "i^l h^lP "nake the TS 2068 itself
more useful and hopefully this will get others interested in
programing with the TS 2068.
SINC-LINK
by George Chambers
2068
VERA CRUZ on the Larken Disk System
by G. Chambers
A number of Spectrum programs, mainly the games
variety, are arranged that further blocks of data are
loaded within the program, during It's operation. This
article describes the method used to convert one of
these programs to the Larken system.
VERA CRUZ consists of two program sections. The
first section relates to the murder scene, while the
setting for the second section Is the police station.
The LOAD routine that we are Interested In Is In the
Basic portion of the program, so the modification is
relatively easy.
Each of the two sections of VERA CRUZ Is comprised
of a short BASIC loader, followed by several blocks of
code, then ended with a larger BASIC program, ue shall
handle each section separately. In this particular
application we have no need of the Initial Basic
loader, and it will be ignored.
The following details a step by step procedure for
each of the two sections.
1. Enter as a single direct command: LOAD CODE:
LOAD CODE: LOAD CODE
2. Load the program from tape. The command in Item 1
should load In the three blocks of code in the first
section.
3. Save the code to disk with the following conmands:
RANDOMIZE USR 100: SAVE "vera.Cl" CODE 32768,11150
RANDOMIZE USR 100: SAVE "vera.CZ" CODE 64256,205
4. MERGE the longer BASIC program which follows the
three blocks of code on the tape.
5. Revise several program lines as follows:
Change: 10 PRINT #4: LOAD "cruz.Bl"
Change: 30 PRINT USR 100: SAVE "vera.Bl"
Add: 35 RANDOMIZE USR 100: OPEN f4,"dd"
Add: 36 PRINT #4: LOAD "vera.Cl" CODE
Add: 37 PRINT #4: LOAD "vera.C2" CODE
Delete: 810
Change 820 Remove part of line 820
(AT 12,10;"AND START TAPE":)
6. Save the program to disk by GOTO 30
Saving the second section to disk is pretty well
the same as was done on the first one. There are 5
blocks of code In the second section.
7. Enter CLEAR 49999
8. Enter as a direct command the following:
LOAD " CODE: LOAD "" CODE: LOAD "" CODE: LOAD ""
CODE: LOAD "" CODE
9. Save the code to disk using the following connands
RANDOMIZE USR 100: SAVE "cruz.Cl" CODE 50000,6338
RANDOMIZE USR 100: SAVE "cru2.C2" CODE 64256,1112
10. MERGE the Basic program following the code blocks,
and modify it as follows:
Change: 30 RANDOMIZE USE 100: SAVE "cruz.Bl"
Add: 32 PRINT #4: LOAD "cruz.Cl" CODE
Add: 34 PRINT #4: LOAD •cruz.C2" CODE
11. Save the Basic to disk with the command GOTO 30
This completes the conversion. In our next article
we will deal with a program in which the LOAD coBnand
is contained In the M/C section of the program.
LARKEN RANOISK
9* Chambers
In the last newsletter I mentioned that I had
purchased a RAMdIsk from Larken Electronics. I shall
give you an update of my expertccts with it.
Really, all pretty routine. Mostly fIne-tuiHng my
menus and being a bit more selective as to what
prograas I place on iqy OMNIBUS disk. I hav* put
Tasword onto the RAMdIsk. It secMd to be the progna
I called up more than anything else. Mostly btowst of
club business* I suppose.
Well, one thing though. I decided that this was a
great way to go, but I needed a quad-density drive to
hold all the programs that I would like to have at my
fingertips! Imagine, twice as many program options! 1
One of our members, Richard Hurd, tells me that he
has bought a TANDON TM101-4A drive from JB
Technologies, and has it up and running. This is a
quad drive. I spoke to Larry K., and he says that the
TANDON is the only Amerlcan-nade drive I should
consider, and further, that I might do well to buy It
from Ed Grey Enterprises. So I have sent a money order
off for one of them.
Ed Grey is one of the two people in a partnership,
Clifford and Grey, that supplied so many of the 2050
modem boards to Timex owners. His address Is P.O. Box
2186. Inglewood, CA 90305. His phone No. Is 213 759
7406. Call him between 6pm and 9pm. I'll keep you
posted.
A TS2068/Larken Program
FILE RECOVERY
by George Chambers
It sometimes happen that a user deletes a disk
file, only to realize later that file is still needed.
This program provides a simple means of recovering
these files.
The file recovery process is based on the fact that
even though the disk Directory shows no record of the
file it is nevertheless still on the disk. A disk file
ERASE conmand simply places a marker at the start of
the file name in the directory track (0). The marker
is the value '254*. If you were to do an inspection of
file names on the directory track, using the utility
' doctor. Bl', you would see that unused name cells and
'erased file' cells have this '254' marker.
This program loads the directory track into a buffer
area in the computer, searches the name cells for the
desired file, and removes the 'erased' marker. The
now-modified directory track 0 Is then copied back
onto the disk.
You should note that the success of this program
depends on the erased file not having been
over-written by a subsequently program SAVE. Being
overwritten means that the tracks containing the
actual program have been reused, and the file is most
certlanly lost. Sometimes* a file may not be
overwritten because there were lower-numbered tracks
available for storage, in which case file recovery is
still possible. The only way to know Is to try.
see next page for listing;
SINC-LINK
2068
100 REM File Recovery Utility for
5 the LARKEN system
110 REM By G. Chambers
14 Richome Court Scarborough,
Ont. CANADA M1K 2Y1
accid
the
120 REM Use to recover an
entally erased file
130 REM Data statements contain
"RHMD0S.C2" Code.
140 REM For use with the DSK400 system o
f 5390 bytes/track. Single-, double-, or Q
uao-.
150 GO TO 170
160 CLEAR : RANDOMIZE USR 100: SAVE "recovr
31" LINE 170
170 RESTORE 210
180 FOR n=63000 TO 63104
190 READ a: POKE n,a
200 NEXT n
210 DATA 135,43,246,195,72,246,195,104,246,2
43,205,98,0,201,58 '
220 DATA 100,0,251,201,205,33,246,58,176,92
50,29,32,205,126 » » » ,
230 DATA 0,205,123,0,33,112,32,17,156,224.1.
0,20,237,176 ' * *
240 DATA 195,38,246,205,33,246,58,176,92,50.
i 29,32,33,156,224 ' ' *
250 DATA 17,112,32,1,0,20,237,176,205,150.0.
205,126,0,205 ' * '
260 DATA 120,0,195,38,246,205,33,246,205,129
,0,205,123,0,33 * '
270 DATA 112,32,17,156,224,1,0,20,237,176,19
5,38,246,201,0 , ,.=7.
280 DIM e$(9j; DIM aS(9): DIM c$(1): dim b$f
9) : DIM d$(256)
290 LET trac=23728: LET nexttrack=63006: LET
loadbuf =63000: LET savebuf =63003
300 BORDER 1 : PAPER 1 : CLS
310 LET a$='» RETURN ff
320 PRINT AT 2,6; INK 2; PAPER 6;"LARKEN DIS
K UTILITY"; PAPER 1 ; , , TAB 5; PAPER 6;"Delete
d File Recovery"; PAPER 1,,TAB 6; PAPER 6;"B
y George Chambers"
330 INK 3: PLOT 0,108: DRAW 0,62: DRAW 255 0
: DRAW 0,-62: DRAW -255,0 '
340 INK 6: PLOT 8,114: DRAW 0,50: DRAW 238.0
: DRAW 0,-50: DRAW -238,0: INK 7
350 PRINT AT 10,0;d$jAT 14,1;"lnsert disk wi
th deleted file"».TAB 2;"and Press any key t
o start": PAUSE 0 ^ ^
360 REM Search of tracks
^ased file
370 INPUT "Enter the full name of the delete
d file ";b$
380 POKE trac,0: RANDOMIZE USR loadbuf
390 LET f=PEEK 57520«PEEK 57521-1
400 POKE trac,1: RANDOMIZE USR loadbuf
410 PRINT AT 10,0;d$;AT 10,10.b$5AT 10,2;"Se
arching tracks for program"; AT 13, 8 .-"Track
Program"
420 PRINT AT 14, 9 J "No. Name"
430 FOR n=1 TO f
440 IF n>1 AND PEEK 57500=0 AND PEEK 57501=0
THEN LET n=7g: PRINT AT 10,0;d$;AT 11,1; P
APER 7; INK 2; "File name not found on tracks
PAUSE 0: STOP
450 LET d=n
460 FOR m=1 TO 9
470 LET a$(m}=CHRS PEEK (57501+m)
490 NEXT m
500 PRINT AT 16,9;n;TAB 14;a$
510 IF a$=b$ THEN LET n=f
520 IF n<f THEN RANDOMIZE USR nexttrack
530 NEXT n
540 REM Search for deleted name in 0
irectory
550 POKE trac,0: RANDOMIZE USR loadbuf
560 LET g=57524+d
570 POKE g,245
580 LET c$=b$(1): LET eS=b$(2 TO ): LET e$="
RETURN "+e$
590 FOR n=576a8 TO 61088 STEP 34
600 IF PEEK (n+4)=0 AND PEEK (n-<-5)=0 THEN P
RINT AT 20,3; PAPER 7; INK 2; "Erased Filenam
e not found" J TAB 9; "in Directory": PAUSE 0*
STOP
610 FOR m=1 TO 9
620 LET a$(m)=CHR$ PEEK (n+m)
625 NEXT m
630 IF e$=a$ THEN LET a=n: LET n=6108a: POK
E (a-H),COOE c$: GO TO 640
640 NEXT n
650 LET m=a+11
660 POKE m,d
670 FOR n=1 TO 22
680 IF PEEK Cm+n}=249 THEN LET na22z GO TO
700
690 POKE g+n,245
700 NEXT n
710 PRINT AT 9,0;d$;AT 1 0 , 3 ; "Program has bee
n restored"»»»» PAPER 5; INK 2; "Remove WRITE
-PROTECT tab from defective disk and Insta
11. "»»" Press a key to save to track 0
PAUSE 0
720 POKE trac,0: RANDOMIZE USR savebuf
730 PRINT AT 11,0;d$;AT 13, 9; "JOB COMPLETEO"
JAT 15, 10; "Press a key", "to display reoovere
d file(only3": PAUSE 0
740 PRINT USR 100: CAT b$,
750 STOP
1000: SAVE "recovr" LINE 100
1010 STOP
SINC-LINK
13
THE LAST PAGE
On Sale Today
"What happened to the cigar box
filled with scissors, paste and crayons?"
In The Bleachers
Bob enters the wrong data into his computer-
ized exercise bike.
( ■ ^ .
Pottmottar, if Undtiivered Rtturn to :
Toronto Timtx - Sincioir Uttrt Club
P 0. Box 7274 Sfft. A
Toronto, Ont., M5W 1X9
Conodo
SINC-LINK